1. Field of the Invention
Apparatuses and methods consistent with the present invention relate to a packet forwarding system for forwarding packets to a destination at a high speed, and more particularly, to a packet forwarding system having an efficient packet memory management unit and an operation method thereof.
2. Description of the Prior Art
FIG. 1 is a block diagram for schematically showing a packet memory management unit of a conventional packet forwarding system.
The packet memory management unit has a packet generator 110, a controller 130, an empty queue 150, a transmit (TX) queue 170, and a packet memory 190.
The packet generator 110 creates Internet Protocol (IP) packets from data inputted in units of data transmission, units such as Asynchronous Transfer Mode (ATM) cells, and an IP packet contains at least one sub-packet each having a fixed length.
The controller 130 controls the empty queue 150 and the TX queue 170 to read and write (or load) sub-packets from and to the packet memory 190, and controls the overall packet memory 190 to deliver generated IP packets in a fixed transmission order.
The empty queue 150 has location information on empty spaces of the packet memory 190, that is, pointers of empty buffers, and the empty queue 150 operates in a stack basis, having information on a mutual connection from the header entry up to the trail entry.
The TX queue 170 records information on locations of IP packet header and trailer corresponding to IP packet transmission order, and operates in the first-in first-out (FIFO) basis.
FIG. 2 is a view for conceptually illustrating a conventional TX queue 170. The TX queue 170 needs spaces storing location information on the maximum number of N IP packet headers, and, further, needs spaces storing location information of a trailer of the largest IP packet. That is, the controller 130 transmits IP packet header and trailer stored or loaded in the packet memory 190 based on the location information of the IP packet header and trailer stored in the TX queue 170.
In general, SRAMs having excellent performance in random operations are used as a storage medium for the empty queue 150 and TX queue 170, and DRAMs having excellent performances in burst operations are used as a storage medium for the packet memory 190. That is, in view of the characteristics that IP packets are stored in the packet memory 190, the IP packet headers are randomly stored, but the trailer accompanying the IP packet header has information on mutual connections and stored in a burst manner.
Accordingly, there exists a problem in that the use efficiency of the conventional TX queue 170 is degraded depending upon the characteristics of storage media and the characteristics of data stored in the storage media.
Further, there is poor efficiency with respect to costs of using a large volume TX queue and an SRAM.